package com.appheader.rongmaphone.user;


import com.appheader.rongmaphone.cache.CacheManager;

/**
 * 当前登录用户信息管理
 *
 * @author alaowan
 */
public class CurrentUserManager {

    public static final String CACHE_KEY_CURRENT_USER = "current_user";

    /**
     * 清除当前登录用户（退出登录时调用）
     */
    public static void clearCurrentUser() {
        CacheManager.getGlobalCache().remove(CACHE_KEY_CURRENT_USER);
        userId = null;
    }

    /**
     * 设置当前登录用户（登录成功后调用）
     */
    public static UserInfo setCurrentUser(UserInfo user) {
        CacheManager.getGlobalCache().putCache(CACHE_KEY_CURRENT_USER, user);
        return user;
    }

    /**
     * 获取当前登录用户信息
     *
     * @return
     */
    public static UserInfo getCurrentUser() {
        return (UserInfo) CacheManager.getGlobalCache().getCache(CACHE_KEY_CURRENT_USER);
    }

    /**
     * ---------为常用参数创建静态字段-------------start
     */
    //TODO:退出登陆重置静态变量
    private static String userId;
    private static String sessionId;
    //sessionId可以改变

    public static String getUserId() {
        if (userId == null) {
            UserInfo userInfo = getCurrentUser();
            if (userInfo != null) {
                return userInfo.getUid();
            }
        }
        return userId;
    }
    public static String getSessionId() {
        if (sessionId == null) {
            UserInfo userInfo = getCurrentUser();
            if (userInfo != null) {
                return userInfo.getSession_id();
            }
        }
        return sessionId;
    }


    //TODO:name,sex ,avatarId可以改变，所以个人信息一旦更改需要重置这几个参数


    public static void clearUserProfile() {
        userId = null;
        sessionId = null;
    }

    /**---------为常用参数创建静态字段-------------start*/
}
